Nana's Blog

Vue 2.0在老版本浏览器中打开项目页面空白解决方案

原因

Babel 默认只转换新的 JavaScript 句法(syntax),而不转换新的 API ,比如 Iterator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise 等全局对象,以及一些定义在全局对象上的方法(比如 Object.assign、Array.from)都不会转码。为了解决这个问题,我们使用一种叫做 Polyfill(代码填充,也可译作兼容性补丁) 的技术。
简单地说,polyfill即是在当前运行环境中用来复制(意指模拟性的复制,而不是拷贝)尚不存在的原生 api 的代码。

解决方案

1
npm install --save-dev babel-polyfill

  1. 在main.js中引入

    1
    import 'babel-polyfill'
  2. 在config中的webpack.base.conf.js中,修改编译配置

1
2
3
entry:{
app:['babel-polyfill','./src/main.js']
}